package com.example.summary.leetcode;

import java.util.Arrays;

//公司计划面试 2N 人。第 i 人飞往 A 市的费用为 costs[i][0]，飞往 B 市的费用为 costs[i][1]。
//
// 返回将每个人都飞到某座城市的最低费用，要求每个城市都有 N 人抵达。
//
//
//
// 示例：
//
// 输入：[[10,20],[30,200],[400,50],[30,20]]
//输出：110
//解释：
//第一个人去 A 市，费用为 10。
//第二个人去 A 市，费用为 30。
//第三个人去 B 市，费用为 50。
//第四个人去 B 市，费用为 20。
//
//最低总费用为 10 + 30 + 50 + 20 = 110，每个城市都有一半的人在面试。
//
//
//
//
// 提示：
//
//
// 1 <= costs.length <= 100
// costs.length 为偶数
// 1 <= costs[i][0], costs[i][1] <= 1000
//
//
public class LeetCode1095 {

    public static void main(String[] args) {
        int[][] x = new int[4][2];
        x[0][0] =10;
        x[0][1] =20;
        x[1][0] =30;
        x[1][1] =200;
        x[2][0] =40;
        x[2][1] =50;
        x[3][0] =30;
        x[3][1] =20;
        System.out.println(twoCitySchedCost(x));

    }

    public static int twoCitySchedCost(int[][] costs) {
        int res=0,len = costs.length;
        int[] cz = new int[len];
        for(int i=0;i<len;i++){
            res += costs[i][0];
            cz[i] = costs[i][1] - costs[i][0];
        }
        Arrays.sort(cz);
        for(int i=0;i<len/2;i++)
            res += cz[i];
        return res;
    }
}
